package com.mo.sp03.user.service;

import com.fasterxml.jackson.core.type.TypeReference;
import com.mo.sp01.pojo.User;
import com.mo.sp01.service.UserService;
import com.mo.web.util.JsonUtil;

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;

import org.springframework.stereotype.Service;

import java.util.List;

@Slf4j
@Service
public class UserServiceImpl implements UserService {

    //注入yml中配置的测试用户用的用户数据
    @Value("${sp.user-service.users}")
    private String userJson;



    @Override
    public User getUser(Integer id) {

           log.info("获取用户，userId="+id);
            //userHson---->Lsit<User>
       List<User> list= JsonUtil.from(userJson, new TypeReference<List<User>>(){});

        //list.for
        for (User user: list) {
            if (user.getId().equals(id)){
                return user;
            }
        }
        //如果未找到用户，返回一个写死的用户数据
        return new User(id,"用户名"+id,"密码"+id);
    }

    @Override
    public void addScore(Integer id, Integer score) {

        log.info("增加用户积分，userId="+id+",score="+score);

    }
}
